package com.sg.service.biz.app.nb;

import cn.hutool.core.bean.BeanUtil;
import com.sg.dto.biz.app.req.*;
import com.sg.dto.biz.app.res.*;
import org.apache.skywalking.apm.toolkit.trace.Tag;
import org.apache.skywalking.apm.toolkit.trace.Tags;
import org.apache.skywalking.apm.toolkit.trace.Trace;
import org.springframework.stereotype.Service;

/**
 * @author ： 手工接入方法
 * @version 1.0
 * @since 2022/5/28 15:32
 */
@Service
public class NbStandardData {
    /**
     * code:receptionService
     * name:统一出参
     * desc:undefined
     * gen by moon at 3/3/2023, 11:44:22 PM
     **/
    @Trace(operationName = "统一出参")
    @Tags({@Tag(key = "参数", value = "arg[0]"),
            @Tag(key = "返回值", value = "returnedObj")})
    public ImplementAccessParameterBizFieldRespDto implementAccessParameterBizField(ImplementAccessParameterBizFieldReqDto reqDto) {
        return BeanUtil.toBean(reqDto, ImplementAccessParameterBizFieldRespDto.class);
    }

    /**
     * code:receptionService
     * name:M3-将过程周期ID与目标周期ID合并成数据集
     * desc:undefined
     * gen by moon at 3/11/2023, 10:02:42 PM
     **/
    @Trace(operationName = "M3-将过程周期ID与目标周期ID合并成数据集")
    @Tags({@Tag(key = "参数", value = "arg[0]"),
            @Tag(key = "返回值", value = "returnedObj")})
    public ImplementAcceptAboveFieldsRespDto implementAcceptAboveFields(ImplementAcceptAboveFieldsReqDto reqDto) {
        ImplementAcceptAboveFieldsRespDto retData = new ImplementAcceptAboveFieldsRespDto();
        retData.setProcessExceuteCycleStageList(reqDto.getProcessExceuteCycleStageList());
        return retData;
    }

    /**
     * code:receptionService
     * name:M3-接收入参字段
     * desc:undefined
     * gen by moon at 5/31/2023, 3:19:03 PM
     **/
    @Trace(operationName = "M3-接收入参字段")
    @Tags({@Tag(key = "参数", value = "arg[0]"),
            @Tag(key = "返回值", value = "returnedObj")})
    public CalculateAcceptAboveFieldsRespDto calculateAcceptAboveFields(CalculateAcceptAboveFieldsReqDto reqDto) {
        return BeanUtil.toBean(reqDto, CalculateAcceptAboveFieldsRespDto.class);
    }

    /**
     * code:receptionService
     * name:约定：数据类型编码
     * desc:undefined
     * gen by moon at 11/7/2023, 7:17:48 PM
     **/
    @Trace(operationName = "约定：数据类型编码")
    @Tags({@Tag(key = "参数", value = "arg[0]"),
            @Tag(key = "返回值", value = "returnedObj")})
    public ImplementAcceptFieldByStandardDataRespDto implementAcceptFieldByStandardData(ImplementAcceptFieldByStandardDataReqDto reqDto) {
        return BeanUtil.toBean(reqDto, ImplementAcceptFieldByStandardDataRespDto.class);
    }

    /**
     * code:receptionService
     * name:约定：进度值/实际值数据类型编码
     * desc:undefined
     * gen by moon at 1/18/2024, 4:16:39 PM
     **/
    @Trace(operationName = "约定：进度值/实际值数据类型编码")
    @Tags({@Tag(key = "参数", value = "arg[0]"),
            @Tag(key = "返回值", value = "returnedObj")})
    public ImplementFourthReceivingFieldRespDto implementFourthReceivingField(ImplementFourthReceivingFieldReqDto reqDto) {
        return BeanUtil.toBean(reqDto, ImplementFourthReceivingFieldRespDto.class);
    }

    /**
     * code:receptionService
     * name:M3-准备数据：计算开始时间
     * desc:undefined
     * gen by moon at 3/5/2024, 11:36:11 PM
     **/
    @Trace(operationName = "M3-准备数据：计算开始时间")
    @Tags({@Tag(key = "参数", value = "arg[0]"),
            @Tag(key = "返回值", value = "returnedObj")})
    public ImplementFiveReceivingFieldRespDto implementFiveReceivingField(ImplementFiveReceivingFieldReqDto reqDto) {
        return BeanUtil.toBean(reqDto, ImplementFiveReceivingFieldRespDto.class);
    }

    /**
     * code:receptionService
     * name:M3接收入参字段
     * desc:undefined
     * gen by moon at 7/5/2024, 11:35:14 PM
     **/
    @Trace(operationName = "M3接收入参字段")
    @Tags({@Tag(key = "参数", value = "arg[0]"),
            @Tag(key = "返回值", value = "returnedObj")})
    public ImplementElevenReceivingFieldRespDto implementElevenReceivingField(ImplementElevenReceivingFieldReqDto reqDto) {
        return BeanUtil.toBean(reqDto, ImplementElevenReceivingFieldRespDto.class);
    }
    //手工接入方法
}
